/*
 * @Author: xiweidong 1324156920@qq.com
 * @Date: 2024-08-30 14:50:29
 * @LastEditors: xiweidong 1324156920@qq.com
 * @LastEditTime: 2024-08-30 15:45:23
 * @FilePath: \plugins\vite.config.js
 * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
 */
import { defineConfig } from "vite";
import { resolve } from "path";
import cesium from "vite-plugin-cesium";

export default defineConfig({
  base: "./",
  /**
   * process.cwd () 是一个方法，用于获取 Node.js 进程的当前工作目录
   */
  // root: process.cwd(),
  /**
   * 作为静态资源服务的文件夹
   */
  publicDir: "public",
  /**
   * 配置相对路径
   */
  resolve: {
    alias: {
      //源码包
      "@": resolve(__dirname, "./src"),
    },
  },
  plugins: [cesium()],
  /**
   * lib库模式配置
   */
  build: {
    //禁止拷贝publicDir下的静态资源
    copyPublicDir: false,
    lib: {
      entry: resolve(__dirname, "src/main.js"),
      name: "ContourLineAlgorithm",
      fileName: "ContourLineAlgorithm",
      // formats: ["es"],
    },
    outDir: "libs",
    //设置最终构建的浏览器兼容目标。默认值是一个 Vite 特有的值——'modules'，这是指 支持原生 ES 模块、原生 ESM 动态导入 和 import.meta 的浏览器
    // target: "modules",
    //rollup配置:https://rollupjs.org/guide/en/#big-list-of-options
    // rollupOptions: {
    // 确保外部化处理那些你不想打包进库的依赖
    // external: ["cesium"],
    // output: {
    //   globals: {
    //     cesium: "Cesium",
    //   },
    // },
    minify: "terser",
    terserOptions: {
      compress: {
        collapse_vars: true,
        dead_code: true,
        drop_console: true,
        drop_debugger: true,
      },
      // ie8: false,
      // ecma: 5,
      // sourceMap: false,
    },
  },
});
